In the field of blockchain technologies, a blockchain node responsible for performing consensus verification on transactions is referred to as a consensus node.
In a consensus verification phase, a consensus node that initiates consensus verification needs to pack transaction information of transactions generated within a time period into a preprocessed block and send the preprocessed block to another consensus node for consensus verification, and the other consensus node verifies whether a transaction pool of the other consensus node includes all transaction information in the preprocessed block. A verification result is that the consensus verification succeeds if the transaction pool includes all the transaction information in the preprocessed block. A verification result is that the consensus verification fails if the transaction pool does not include all the transaction information in the preprocessed block. Subsequently, consensus nodes reach a consensus that the transaction information in the preprocessed block is valid or invalid based on verification results of the consensus nodes on the preprocessed block, and use the consensus as a result of performing consensus verification by the consensus nodes on the preprocessed block. Therefore, it needs to be ensured that transaction information stored in transaction pools of the consensus nodes is consistent, to make the consensus verification result of the consensus nodes as accurate as possible.
In a transaction handling phase, for different transactions, each consensus node can serve as a transaction handling node (which is referred to as a handling node blow) to obtain transaction information of a transaction. For a transaction, a handling node that corresponds to the transaction needs to send transaction information to each other consensus node, and another consensus node that receives the transaction information stores the transaction information in a transaction pool of the other consensus node. Consensus nodes maintain consistent transaction information that is stored in transaction pools of the consensus nodes by using such a method.
However, because network disturbances are always inevitable, the network instability often leads to the instability of information transmission between consensus nodes, and some consensus nodes may fail to receive sent information. For example, a handling node sends transaction information to other consensus nodes. If a network disturbance occurs, the transaction information sent by the handling node to the other consensus nodes may not be received by all the other consensus nodes. Consequently, transaction information stored in transaction pools of the consensus nodes cannot maintain consistent, thereby reducing the accuracy of a consensus verification result of the consensus nodes.